package com.pro.common.api.model.request.pay;

import com.pro.framework.javatodb.annotation.JTDField;
import com.pro.framework.javatodb.annotation.JTDTable;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;

import java.math.BigDecimal;

/**
 * 支付订单表
 */
@Data
@Schema(description = "支付订单")
@JTDTable(entityId = 11001, sequences = {"UNIQUE KEY orderNo (`order_no`)"})
public class PaymentParamsDTO implements IPaymentParamsDTO {
    // 输入
    @Schema(description = "业务类型", example = "EnumPaymentBizType_枚举")
    private String bizType;

    @Schema(description = "对应业务单号")
    private Long bizId;

    @Schema(description = "业务描述")
    private String bizDesc;

    @Schema(description = "订单发起金额")
    private BigDecimal orderAmount;

    @Schema(description = "业务订单编号")
    private String orderNo;

    @Schema(description = "支付成功后用户页面跳转地址")
    private String returnUrl;

    @Schema(description = "支付渠道Id", example = "包含货币和支付方式相关信息")
    @JTDField(entityName = "pay.payChannel", entityClassKey = "id")
    private Long payChannelId;

    @Schema(description = "订单标题")
    private String subject;
}
